Hair in film visual effects and modern video games requires an extensive amount of high fidelity detail in order to appear realistic. At the same time creators of hair must have full control over the hair appearance in order to achieve the desired artistic vision. This poses a challenge for hair modeling software since the software must choose to provide easy hair modeling procedural steps at the expense of modeling high fidelity detail, and visa-versa.
Manual hand-modeling of complex hair grooms with modern hair modeling software allows the most control over directly specifying desired shapes. This is generally performed by using one of two methods. The first method of hand-modeling complex hair grooms is modeling a set of “guide” curves which are then interpolated to dense hair. The second method is altering final dense hair strands individually.
Setting properties to groups of hairs is performed in a similar way. For example, a user can define places on a hair distribution surface (i.e. coordinates) where they want to define some specific properties of the hair, such as hair shape, colors, widths and/or styling. Hairs nearby these coordinates will use the specified properties.
“Guides” are usually generated separately and later hand-edited by a user through control point manipulation or brushing. Some currently known tools, such as Houdini™, Maya™, and Ornatrix™, allow original input guides to be altered/modified (i.e., their count or order can change), and the applied modifications will be “re-mapped” to the new input guides by surface interpolation.
However, these current approaches force users to either operate on a sparse set of guides, use different ways of wrapping hairs using editable hair volumes, or modify dense hairs directly one by one.
Using sparse guides is the most widely used approach in specifying hair parameters (i.e., shape, widths, animation, etc.) because it allows a user to work with a manageable number of strands. However, it is difficult to define fine details of final hairs using guides. Using guides usually requires manually creating more guides where detail is required, which at some point makes the guide count less manageable.
Wrapping hairs in a volume is a useful approach for defining procedural hair. This approach makes it easy to change the overall shape of many final hairs, but it lacks the ability to edit finals hairs.
Editing final hairs directly allows an artist ultimate control over the look of their groom, but this approach also forces the need to create final hairs before editing begins, because introducing new hairs or reordering hairs will not apply to previously defined shape changes and can even invalidate shape changes. In addition, this approach requires an extensive amount of storage and memory allocation to be able to hold all the per-strand editing information.